The Internet is a vast computer network consisting of many smaller networks that span the world. A network provides a distributed communicating system of computers that are interconnected by various electronic communication links and computer software protocols. Because of the Internet's distributed and open network architecture, it is possible to transfer data from one computer to any other computer worldwide. In 1991, the World-Wide-Web (WWW or Web) revolutionized the way information is managed and distributed.
The Web is based on the concept of hypertext and a transfer method known as Hypertext Transfer Protocol (HTTP) which is designed to run primarily over a Transmission Control Protocol/Internet Protocol (TCP/IP) connection that employs a standard Internet setup. A server computer may issue the data and a client computer displays or processes it. TCP may then convert messages into streams of packets at the source, then reassemble them back into messages at the destination. Internet Protocol (IP) handles addressing, seeing to it that packets are routed across multiple nodes and even across multiple networks with multiple standards. HTTP protocol permits client systems connected to the Internet to access independent and geographically scattered server systems also connected to the Internet.
Client side browsers, such as Netscape Navigator and/or Microsoft Internet Explorer (MSIE) provide a graphical user interface (GUI) based client applications that implement the client side portion of the HTTP protocol. One format for information transfer is to create documents using Hypertext Markup Language (HTML). HTML pages are made up of standard text as well as formatting codes that indicate how the page should be displayed. The client side browser reads these codes in order to display the page. A web page may be static and requires no variables to display information or link to other predetermined web pages. A web page is dynamic when arguments are passed which are either hidden in the web page or entered from a client browser to supply the necessary inputs displayed on the web page. Common Gateway Interface (CGI) is a standard for running external programs from a web server. CGI specifies how to pass arguments to the executing program as part of the HTTP server request. Commonly, a CGI script may take the name and value arguments from an input form of a first web page which is be used as a query to access a database server and generate an HTML web page with customized data results as output that is passed back to the client browser for display.
The Web is a means of accessing information on the Internet that allows a user to “surf the web” and navigate the Internet resources intuitively, without technical knowledge. The Web dispenses with command-line utilities, which typically require a user to transmit sets of commands to communicate with an Internet server. Instead, the Web is made up of millions of interconnected web pages, or documents, which may be displayed on a computer monitor. The Web pages are provided by hosts running special servers. Software that runs these Web servers is relatively simple and is available on a wide range of computer platforms including PC's. Equally available is a form of client software, known as a Web browser, which is used to display Web pages as well as traditional non-Web files on the client system.
A network resource identifier such as a Uniform Resource Identifier (URI) is a compact string of characters for identifying an abstract or physical resource. URIs are the generic set of all names and addresses that refer to objects on the Internet. URIs that refer to objects accessed with existing protocols are known as Uniform Resource Locators (URLs). A URL is the address of a file accessible on the Internet. The URL contains the name of the protocol required to access the resource, a domain name, or IP address that identifies a specific computer on the Internet, and a hierarchical description of a file location on the computer. For example the URL “http://www.example.com/index.html”, where “http” is the scheme or protocol, “www.example.com” is the Fully Qualified Domain Name (FQDN), and “index.html” is the filename located on the server.
Because an Internet address is a relatively long string of numbers (e.g., 31.41.59.26) that is difficult to remember, Internet users rely on domain names, memorable and sometimes catchy words corresponding to these numbers, in order to use electronic mail (e-mail) and to connect to Internet sites on the Web. The Domain Name System (DNS) is a set of protocols and services on a network that allows users to utilize domain names when looking for other hosts (e.g., computers) on the network. The DNS is composed of a distributed database of names. The names in the DNS database establish a logical tree structure called the domain name space. Each node or domain in the domain name space is named and may contain subdomains. Domains and subdomains are grouped into zones to allow for distributed administration of the name space.
The DNS provides a mechanism so backup databases may be identified in case the first one becomes unavailable. DNS databases are updated automatically so that information on one name server does not remain out-of-date for long. A client of the DNS is called a resolver; resolvers are typically located in the application layer of the networking software of each TCP/IP capable machine. Users typically do not interact directly with the resolver. Resolvers query the DNS by directing queries at name servers, which contain parts of the distributed database that is accessed by using the DNS protocols to translate domain names into IP addresses needed for transmission of information across the network.
A domain name consists of two parts: a host and a domain. Technically, the letters to the right of the “dot” (e.g., gen-eric.com) are referred to as Top Level Domains (TLDs), while hosts, computers with assigned IP addresses that are listed in specific TLD registries are known as second-level domains (SLDs). For the domain name “gen-eric.com”, “.com” is the TLD, and “gen-eric” is the SLD. Domain name space is the ordered hierarchical set of all possible domain names either in use or to be used for locating an IP address on the Internet. TLDs are known as top-level domains because they comprise the highest-order name space available on the Internet. Second-level domains, as well as third-level domains (3LDs) such as “eric.gen-eric.com”, are subsidiary to TLDs in the hierarchy of the Internet's DNS.
There are two types of top-level domains, generic and country code. Generic top-level domains (gTLDs) were created to allocate resources to the growing community of institutional networks, while country code top-level domains (ccTLDs) were created for use by each individual country, as deemed necessary. More than 240 national, or country-code TLDs (e.g., United States (.us), Japan (.jp), Germany (.de), etc.) are administered by their corresponding governments, or by private entities with the appropriate national government's acquiescence. A small set of gTLDs does not carry any national identifier, but denote the intended function of that portion of the domain space. For example, “.com” was established for commercial networks, “.org” for not-for-profit organizations, and “.net” for network gateways. The set of gTLDs was established early in the history of the DNS and has not been changed or augmented in recent years (COM, ORG, GOV, and MIL were created by January 1985, NET in July 1985, and INT was added in November 1988).
A growing set of tools and services have enabled users to choose many techniques suited for improved navigation and access to content on a network such as the Internet. Different services are used to access desired content. There are resolution services for the DNS which receives a domain name (e.g., “example.com) from a client for translation into an IP address to access the resources of a specific network addressable device (e.g., web server) on a network such as the Internet. The function of translating a domain name into a corresponding IP address is known as name resolution. Name resolution is performed by a distributed system of name servers that run specialized software known as resolvers to fulfill the resource location request of the client by the successive hierarchical querying of the resource records from zone files.
There are registration services such as the registration of domain names. Domain name registration for a given Network Information Center (NIC) authority may be accessed by a TCP/IP application called WHOIS, which queries a NIC database to find the name of network and system administrators, system and network points-of-contact, and other individuals who are registered in appropriate databases. Domain names are identifiers used for accessing resources and retrieving registrant domain name information. The availability of a domain name from a NIC authority for a given TLD is determined by submitting a WHOIS request. Resource location is determined by resolving a query in the DNS and domain name availability is determined by using a WHOIS service to query an appropriate NIC database.
There are search services to access searchable databases of network resources that are relied upon daily by millions of users. When a client system receives a search request, a query may be sent to a server connected to the Internet to retrieve Uniform Resource Locators (URLs) that satisfy the search request. Web page results are typically generated and displayed to the client in a batch of hyperlinks that access network resources.
In general, these areas remain as separate services and only a few examples may be demonstrated with respect to the integration of these separate areas. For instance, steps for integration of services have been demonstrated in U.S. Provisional Application Ser. No. 60/130,136 filed Apr. 20, 1999, by Schneider entitled “Method and system for integrating resource location and registration services”, U.S. Provisional Application Ser. No. 60/160,125 filed Oct. 18, 1999, by Schneider, entitled “Method and system for integrating resource location, search services, and registration services”, and U.S. patent application Ser. No. 09/525,350 filed Mar. 15, 2000, by Schneider, entitled “Method for integrating domain name registration with domain name resolution.”
U.S. Pat. No. 5,778,367 issued on Jul. 7, 1998 by Wesinger Jr., et al., entitled, “Automated on-line information service and directory, particularly for the world wide web” provides a graphical front end to the WHOIS database, with additional hypertext link integration. Links are embedded in the results such that, clicking on a specific result, WHOIS is queried once again with respect to the selected information. This action would produce the same result as if the user had copied down the selected information, navigated to WHOIS and entered the selected information in the lookup field. The '367 patent automates the WHOIS tool with respect to itself and does not consider automating extended functions of resolution requests or search requests to access other network resources.
Due to domain name registration growth, it requires more labor to find a desirable domain name that is available. As a result companies such as Oingo, Inc., for example, now provide domain name variation services that help registrars increase domain name sales by identifying and suggesting words and phrases related in meaning to the terms sought to be registered. Other improvements to registration services include generating permutations of available domain names in response to supplying a plurality of keywords as a part of a registration request. Currently, the only way to register a domain name is by initiating a registration request. There are no services that combine the use of other requests (e.g., search request, resolution request, etc.) in response to an initiated registration request.
Resolution requests are most commonly generated in response to input provided to the location field of a web browser. The main use of a web browser location field is for resolving URLs to access resources. Entering a URL in the location field serves as a means to access that URL. Because the function of the location field is critical for accessing resources, the design of such location fields have rivaled much competition and innovation between existing web browser products from companies such as Netscape and Microsoft. Improvements to better track and organize sites of URLs that users have visited such as Bookmark folders, URL history, and the personal toolbar are all examples of functionality designed to help users navigate. Other improvements include spell checking and an autocomplete feature from the URL history as text is entered into the location field.
A more recent feature called Smart Browsing is integrated into Netscape Navigator that uses Internet Keywords so users may streamline the use of URLs and get fast access to web sites using the browser's location field. Any single or multiword strings typed into the browser's location field that does not include a “.” are sent via HTTP to a server at “netscape.com”. The keyword server pulls the string and compares it to several separate lists of keyword-URL pairs. If the keyword system finds a match, it redirects the user's browser to the URL of the keyword-URL pair. Failing a match against the lists, the user's browser is redirected to a Netscape Search page with the typed string as the search query. The “.” versus “ ” is a key factor in determining what services are used. The detection of a “.” implies a domain name whereas the detection of a “ ” implies a search request.
The autosearch feature of Microsoft Internet Explorer (MSIE) is another example of an improvement to the location field of a web browser. The details of the autosearch feature is disclosed in U.S. Pat. No. 6,009,459 issued on Dec. 28, 1999 by Belfiore, et al., entitled, “Intelligent automatic searching for resources in a distributed environment.” The '459 patent specifies a mechanism for a computer system to automatically and intelligently determine what a user intended when the user entered text within the location field of a web browser. Often users improperly enter URLs or enter search terms in a user interface element that requires URLs. If the user enters text that is not a URL, the system may first try to construct a valid URL from the user-entered text. If a valid URL can not be constructed, the browser then automatically formats a search engine query using the user-entered text and forwards the query to an Internet search engine.
In addition, the '459 patent specifies a template registry that categorizes the specific suitability of a plurality of search engines to locate web sites related to a determined meaning of the specified text. The template is an entry in the registry that includes replaceable characters that may be replaced with the processed text. An example template registry entry that causes the Yahoo! search engine to be called is “http://msie.yahoo.com/autosearch?% s”. The % s is filled in with information regarding the search terms.
Furthermore, the '459 patent specifies a method which provides for automatically deleting prefix terms from input that are identified as not necessary to perform a search based on the determined meaning of the entered input. Directive terms such as “go” or “find” followed by search terms may be entered within the location field. Such users intend for the web browser to locate web pages that are identified by terms within the text. As the directive terms do not contain content that is useful in conducting a search, these prefix terms are dropped from the text. Though prefixes may help process keywords in a more specific way, there are no such prefixes in use for specifying how domain names may be processed through a user interface element used for search requests, resolution requests, and registration requests. For example, search engine web sites have specified a list of prefixes to assist in performing a more specific search request. Any such prefixes have no relevance to domain names [e.g., valid domain names (VDNs) and fictitious domain names (FDNs)] but to that of keywords and phrases.
There have been advances with respect to submitting keyword search requests to search engines. RealNames and other companies like Netword use plain language as a means for resource location and have developed their own version of resolution services. Using simplified network addresses in the form of keywords/phrases as opposed to the conventional form of URLs in the DNS, offers the possibility to further contemplate the differences between search requests and resource location. Though an observable fact, little if any has been done to provide integration tools to support these differences. To date, the only advancement demonstrated are the partnerships made with RealNames and different portal web sites. When a search request is performed, input may be forwarded to a RealNames server concurrent with the original search request and if there are any matches, the first result displayed may be a registered RealName which links to a registered web site followed by displaying the search results from the search request.
Though RealNames demonstrates using keywords and phrases from a search request for resource location, there are no methods for detecting a domain name or URL as input from a search request. In effect, a domain name is processed as a literal string or keyword. For example, when a popular web site such as “news.com” is processed from input there is a high probability that the URL “http://news.com” would be displayed within the top few search results. There are no systems that provide such a URL as a first result. However, when a domain name is reserved and has no web site or the domain name corresponds to a web site with little traffic (e.g., web pages having no META tags, etc.), there are no search results, and in turn, no hyperlinks are displayed. This observation is apparent upon surveying the search results of hundreds of search engines, which clearly indicate that a domain name is processed as a literal string only without consideration for processing input in any way aside from that of a search request. There have been some improvements by providing links to other vendors such as processing the search request and responding with a link for a book search at “amazon.com” or the like, but there are no such links that provide vendor domain name related services or online identity services in response to a search request.
FIG. 1a depicts a typical output from a search portal web site for the input “zipnames.com”. Results are returned to output such as “found no document matching your query”, and generates hyperlinks that use the input as a search request from another URL. Such links may redirect to shopping sites and reference sites or to other search engines. FIGS. 1b and 1c depict output from a metasearch site for the input “zipnames.com”. Again, the output depicts links that are generated for searching input at another web address. It is clear from these results that no provisions have been made to detect the presence of a domain name before processing a search request.
If a search request may detect that a domain name is processed as is and/or as a network address then steps of resource location and the use of resolution services or registration services may be made in addition to the search request. No search engines or existing services make use of the “.” delimiter to extend searching into the realm of processing resolution and/or registration services. Any results that are returned from a search request are based on finding a database match to the domain name as a keyword or literal string. Currently, there are no search engines or resources that generate a link for WHOIS results in response to receiving a network address such as a domain name, FQDN, or URL and may be listed or redirected as part of search results.
To date, search services, resolution services, and registration services have remained as separate services. New utility may be demonstrated by combining these separate services into a unified service. Accordingly, in light of the above, there is a strong need in the art for a system and method for integrating and enhancing resolution services, search services, and registration services.